package com.yuwen.yuwenRPC.registry;

/**
 * @ClassNameLocalRegistry
 * @Description TODO
 * @Author钰玟
 * @Date2025/3/29 下午8:39
 * @Version 1.0
 **/

import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

/**
 * 本地存储中心
 * 存储 common的 所有接口 例如 name => userService  method
 */
public class LocalRegistry {
    /**
     * 存储信息的 concurrentMap
     */
    private static final Map<String,Class<?>> map= new ConcurrentHashMap<>();

    /**
     * 注册服务
     * @param serviceName 服务名称
     * @param implClass 实现类
     */
    public static void registry(String serviceName,Class<?> implClass){
        map.put(serviceName,implClass);
    }

    /**
     * 获取服务
     * @param serviceName 服务名称
     * @return 服务的实现类
     */
    public static Class<?> get(String serviceName){
        return map.get(serviceName);
    }

    /**
     * 删除服务
     * @param serviceName 删除服务的名称
     */
    public static void remove(String serviceName){
        map.remove(serviceName);
    }
}
